package com.example.data.entity.kg;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 知识图谱关系实体：严格映射kg_relation表结构
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class KgRelation {
    private Long id;
    private Long subjectEntityId;         // 主体实体ID（关联kg_entity.id）
    private Long objectEntityId;          // 客体实体ID（关联kg_entity.id）
    private String relationType;          // 关系类型（如"定都"，对应RelationType枚举）
    private String relationDesc;          // 关系描述（文本依据）
    private Double confidence;            // 置信度（0-1，decimal(5,4)）
    private Long sourcePreprocessedId;    // 来源预处理数据ID（关联preprocessed_data.id）
    private Long sourceCleanedId;         // 来源清洗数据ID（关联cleaned_data.id）
    private Long sourceRawId;             // 来源原始数据ID（关联raw_data.id）
    private Integer isValid;              // 有效性（1-有效，0-无效）
    private LocalDateTime createTime;     // 创建时间
    private LocalDateTime updateTime;     // 更新时间

}